Three-dimensional correlated data display

ABSTRACT

A method and apparatus for synchronizing presentation of multi-domain measurements using actual or quasi 3-D representation. The synchronization between data streams acquired in different measurement domains is performed by using timestamps, a common trigger event, or a common clock, or a combination of any or all of them. In this way, for example, a transient anomaly in the RF spectrum of a communications signal may be correlated with, and displayed with, a related corrupted data communications packet.

FIELD OF THE INVENTION

The present invention relates to the field of graphic visualizationtools and, more particularly, to three-dimensional representation ofmulti-domain measurements of system operation.

BACKGROUND OF THE INVENTION

Signals acquired from relatively simple systems can be viewed andunderstood using two-dimensional graphing techniques that representelectrical activity one or more nodes in a circuit under test. Testingof more complex systems requires that many nodes (often hundreds) beviewed, and the information content and different timing relationshipsof these signals must be presented to the user.

A problem arises because different measurement instruments are used togather information in different measurement domains, and eachmeasurement domain provides a different view of circuit activity overtime. For example, an oscilloscope provides representations ofelectrical phenomena associated with a circuit node, a logic analyzerprovides representations of information content (i.e., logic level andtransition timing) on a (typically) related set of nodes, and a spectrumanalyzer represents the intensity or energy associated with each of aplurality of frequency components. Unfortunately, it can be difficultfor a user to correlate information derived from each of the measurementdomains to arrive at a higher level of understanding of the operation orfailure of a system under test.

What is needed is a method and apparatus for combining the measurementresults from the different measurement domains into a correlated, andeasy to understand display.

SUMMARY OF INVENTION

These and other deficiencies of the prior art are addressed by thepresent invention of a method and apparatus for a synchronizedpresentation of multi-domain measurements using an actual or quasi 3-Drepresentation.

A method according to one embodiment of the invention comprisesreceiving a plurality of sample streams representing respective signalmeasurements; temporally aligning the sample streams; generatingwaveform data associated with the temporally aligned sample streams, thewaveform data representing sample magnitudes as a function of time andincluding Z-axis information adapted to illustrate at least oneinter-stream timing relationship.

BRIEF DESCRIPTION OF THE DRAWINGS

The teachings of the present invention can be readily understood byconsidering the following detailed description in conjunction with theaccompanying drawings, in which:

FIG. 1 is a high level block diagram of a signal analysis and displaysystem according to an embodiment of the invention;

FIG. 2 is a flow diagram of a method according to an embodiment of theinvention; and

FIGS. 3, 4, and 5 are graphical representations useful in understandingthe present invention.

FIGS. 6 and 7 are illustrations of screen displays in accordance withthe invention.

To facilitate understanding, identical reference numerals have beenused, where possible, to designate identical elements that are common tothe FIGURES.

DETAILED DESCRIPTION OF THE INVENTION

The subject invention will be primarily described within the context ofa signal acquisition system having a plurality of function modules whereeach function module performs a respective different signal processingand/or analysis function. However, it will be appreciated by thoseskilled in the art that the various function modules may be used toimplement any combination of functions, including multiple instances ofthe same function. It will further be appreciated by those skilled inthe art that the invention may be advantageously employed in anyenvironment where multiple signal acquisition and/or analysis devicesprocess signals under test, wherein a common correlated display ofinformation derived from such processing is useful. Thus, even thoughFIG. 1 shows a system incorporating a plurality of function modules, thevarious function modules may be dispersed or otherwise provided byadditional test and measurement instruments for acquisition of datasamples by the various test and measurement instruments.

To achieve a multi-domain measurement display, embodiments of thepresent invention utilize a common time reference between the variousmeasurement domain instruments such that an inter-stream timingrelationship is established to enable a 3-D or quasi 3-D waveformrepresentation of the measurements performed by the various instruments.These measurements must then be presented to the engineer in a mannerthat more readily allows the presented measurement information to beintegrated into a meaningful analysis. In this manner, a user may gaininsight into the cause and effect relationships in the operation orfailure of the system under test.

FIG. 1 is a high level block diagram of a system according to anembodiment of the present invention. Specifically, the system 100 ofFIG. 1 comprises an optional input selection machine 110, a plurality ofsignal analysis functions 120 ₁-120 _(N) (collectively signal analysisfunctions 120), a time base 130, a trigger controller 140, an inputdevice 150, a presentation device 160, and a controller 170.

Each of the signal analysis functions 120 comprises any one of a digitalstorage oscilloscope (DSO) function, a logic analyzer function, anetwork analysis function, a spectrum analysis function, and the like.Each of the signal analysis functions 120 receives a corresponding inputsignal IS₁-IS_(N) for processing, which processing results in acorresponding output stream OS₁-OS_(N). Thus, the first input signal IS₁is processed by first signal analysis function 120 ₁ to produce firstoutput stream OS₁ and so on up to an Nth signal analysis function 120_(N) processing an Nth input signal IS_(N) to produce an Nth outputstream OS_(N). It should be noted that a single input signal IS may beused to drive one or more of Signal Analysis Functions 120. It will benoted that each of the input signals IS₁-IS_(N) may comprise one or manyrespective input signals though it is represented by a single arrow inFIG. 1. For example, in the case of a signal analysis function 120comprising a logic analyzer, the corresponding input signal may comprisedozens or hundreds of actual input signals.

Each of Signal Analysis Functions 120 is responsive to a trigger signalTRIG produced by Trigger Controller 140 and a time base signal TIMEproduced by Time Base Controller 130. Thus, the data acquisition andanalysis functions provided by the various Signal Analysis Functions 120may be synchronized and commonly triggered as desired. In this manner,the resulting output data streams OS₁-OS_(N) provide temporally-relateddata which may be aligned in time to support a temporally-synchronizeddisplay of data from each of a plurality of measurement domaininstruments.

Optional Input Selection Module 110 is capable of receiving a pluralityof signals under test SUT₁-SUT_(X) (collectively signals under testSUT). Optional Input Selection Module 110, in response to a controlsignal ISMC provided by Controller 170, couples any of the input signalsunder test SUT, through SUT_(X) to any of Signal Analysis Functions 120₁-120 _(N) as corresponding input signals IS. Optional Input SelectionModule 110 is useful where many signals under test are to be switched orwhere multiple Signal Analysis Functions 120 receive common signalsunder test. Where a predetermined coupling of signals under test toSignal Analysis Functions 120 is known (and unvarying), then suchcoupling may be made directly without use of Optional Input SelectionModule 110.

The Controller 170 controls the operation of Signal Analysis Functions120, Time Base Controller 130, Trigger Controller 140 and, OptionalInput Selection Module 110, if present. Controller 170 comprises aProcessor 176 and a Memory 178 for storing various control programs andother programs 178-P as well as data 178-D. Memory 178 may also store anoperating system 170-OS such as the Windows® operating systemmanufactured by Microsoft Corporation of Redmond, Wash. Other operatingsystems, frameworks and environments suitable for performing the tasksdescribed herein will also be appreciated by those skilled in the artand informed by the teachings of the present invention. For example,Apple®, Macintosh® operating systems, various UNIX-derived operatingsystems and the like also support functions such as those discussedherein.

Processor 176 cooperates with conventional Support Circuitry 174 such aspower supplies, clock circuits, cache memory and the like, and circuitsthat assist in executing software routines stored in Memory 178. Assuch, it is contemplated that some of the steps discussed herein assoftware processes may be implemented within hardware, for example ascircuitry that cooperates with Processor 176 to perform various steps.Controller 170 also contains I/O (input-output) Circuitry 172 that formsan interface between the various functional elements communicating withController 170. For example, I/O Circuitry 172 allows Controller 170 tocommunicate with each of the other elements 110-160 discussed hereinwith respect to FIG. 1.

Although Controller 170 is shown and described as a general purposecomputer, programmed to perform various control functions in accordancewith the present invention, the invention can be implemented in hardwareas, for example, an application specific integrated circuit (ASIC) orfield programmable gate array (FPGA). As such, the process stepsdescribed herein are intended to be broadly interpreted as beingperformed by software, hardware or a combination thereof.

Input Unit 150 comprises a keypad, a pointing device, a touch screen orother means adapted to provide user input to Controller 170. Controller170, in response to such user input, adapts the operation of System 100to perform various functions including data acquisition, triggering,processing, display, and communications. In addition, the user input maybe used to trigger automatic calibration functions and/or adapt otheroperating parameters of Signal Analysis Functions 120, such as DSO(digital storage oscilloscope) functions, logic analysis functions,spectrum analysis functions and the like.

Controller 170 processes one or more acquired sample streams provided bySignal Analysis Functions 120 to generate respective waveform dataassociated with the one or more sample streams. For example, givendesired time per division and volts per division display parametersassociated with a DSO signal analysis function stream, Controller 170operates to modify the raw data associated with the DSO sample stream toproduce corresponding waveform data having the desired time per divisionand volts per division parameters. Controller 170 may also normalizewaveform data having non-desired time per division and volts perdivision parameters to produce waveform data having the desiredparameters. Controller 170 provides the waveform data to PresentationDevice 160 for subsequent display. Presentation Device 160 may comprisea conventional display device such as a liquid crystal display (LCD),cathode ray tube (CRT) or other display device. Presentation Device 160may include respective processing, input/output and memory functionssuch that video signals adapted to produce imagery upon the presentationdevice 160 may be provided by Controller 170 or, alternatively,generated by the presentation device 160 in response to non-videosignals provided by Controller 170.

System 100 of FIG. 1 denotes a generalized representation of an actualsystem. For example, in one embodiment of the invention one signalanalysis function comprises a DSO, another comprises a logic analyzerand a third comprises a spectrum analyzer. Thus, in this embodiment ofthe invention, only three of Signal Analysis Functions 120 are used and,correspondingly, an appropriate number of signals under test (SUT) areprovided thereto.

Each of the sample streams acquired by System 100 of FIG. 1 is stored asa respective plurality of sample records, where a sample record maycomprise a single sample point or a plurality of sample points. Thesample records may be increased or decreased in size and may be scaledaccording to the memory requirements or availability of the system.Within the context of the subject invention, temporal alignment is usedto align sample streams acquired from test and measurement instrumentsmonitoring a plurality of measurement domains. Waveform imagerygenerated using the acquired sample streams may be aligned as imagelayers on a common XY plane where a Z axis perpendicular to the one ormore image planes is used to provide imagery representing signals of anadditional measurement domain or a mathematical processing of one ormore of the measurement domains of interest. Coplanar waveform imagerywill be discussed in more detail below with respect to FIGS. 3-5. Itwill be noted that the coplanar imagery discussed with respect to FIGS.3-5 may also include more or fewer waveforms than shown, as well as moreor fewer image planes than shown.

System 100 of FIG. 1 finds practical application in many test andmeasurement scenarios. For example, in one scenario an oscilloscope, alogic analyzer and a spectrum analyzer are used to measure orcharacterize the operation of a computer interface, such as a Bluetoothchannel, a WiFi channel or an Ethernet channel. The techniques discussedherein are also applicable to other communications media andmethodologies, such as satellite channels, hybrid fiber coax channels, awireless LAN channels and the like. The radio frequency (RF) domain ismonitored by the spectrum analyzer to identify noise or other spectralanomalies that might be disruptive to data flow via the wirelesscomputer interface. The analog domain is monitored by the oscilloscopeto view the modulated logic signal that is being transmitted via thewireless computer interface. The digital domain is monitored by thelogic analyzer to examine the digital packets that are reconstructedafter reception via the wireless computer interface. One skilled in theart will quickly realize that the subject invention is extremely usefulfor clearly showing the relationship between measurements from all threemeasurement domains.

For example, it is useful to identify, or at least view, therelationship between a noise spike occurring in the RF domain and apacket error occurring in the digital or information domain. Tofacilitate such analysis, the subject invention renders these threecomplex domains in a manner that is readily accessible to a viewer. Thatis, the acquired sample streams representing measurements made in thethree domains are temporally aligned and combined to provide waveformdata in which analog and digital domain information are displayed withinthe XY coordinate system of an oscilloscope display, while spectralinformation is displayed on the Z-axis. Other use of the XYZ coordinatesystems may also be employed. Of particular use is the ability to rendera manipulable two-dimensional or three-dimensional display in whichwaveform data drive from each of the three domains is represented.

Thus, as discussed herein, one embodiment of the invention is theapplication of three-dimensional representation of multi-domainmeasurements of system operation in which one or more of an oscilloscopegraph, a logic analyzer trace, a packet representation and a frequencyspectrum waterfall image are combined into a single three-dimensionaldisplay with one axis being time, a second being measurement domain, anda third being intensity or content of the measured phenomena. The toolsof three-dimensional graphics are applied to provide viewing position,perspective and artificial colorization or intensity gradation tohighlight areas of interest.

Three-dimensional representation may be provided using holographicimagery, binocular vision and other techniques. Similarly, a thirddimension may be represented using a two-dimensional display such as aperspective or isometric view. The two-dimensional representation may befixed in perspective or manipulable by a user. By providing multipledomain waveform representations, inter-stream timing relationships, suchas the timing relationship between a noise spike and a data correctionin the above example, may be established and displayed.

FIG. 2 shows a flowchart of a method according to an embodiment of theinvention. Specifically, the method 200 of FIG. 2 is entered at step 210when acquired streams of data are received. The acquired streams of datamay be received from, per box 215, oscilloscopes, logic analyzers,spectrum analyzers and other test and measurement devices and/orsources.

At step 220, the acquired data streams are temporally aligned so thatinter-stream timing relationships are established. That is, bytemporally-aligning the acquired data streams, a viewer examining asubsequently rendered 2-D or 3-D representation of the waveforms mayvisually establish that an anomaly or event represented in onemeasurement domain is temporally-associated with a corresponding anomalyor event within another measurement domain. Per box 225, time stamping,trigger synchronization, a common clock, or other timing means providesthe basis for temporal alignment of the measurements across the domains.In a time stamping embodiment, respective time stamps are insertedperiodically, or provided contemporaneously with, each acquired datastream. The time stamps provide an indication of the acquisition time orother timing parameter (e.g., real time, trigger offset time, and thelike). The time stamps are used to perform the temporal analysisfunction of step 220. In an alternate embodiment, a triggersynchronization scheme is used whereby each of the test and measurementdevices (e.g., oscilloscope, logic analyzer, spectrum analyzer and thelike) operate in response to a common trigger signal. The common triggersignal may be any triggering event and may be generated using digital oranalog means. The triggering signal may be representative of a glitch, arunt signal (i.e., a signal having a less than acceptable amplitude), orother predetermined condition, transition, or anomaly, as well as anarrangement of data bits matching a desired sequential or combinatoriallogic pattern. In an alternate embodiment, a common clock signal is usedsuch that all of the test and measurement devices acquiring streams ofdata are synchronized. The time stamp, common trigger and common clockembodiments may be used individually or in any combination. It will beappreciated by those skilled in the art and informed by the teachings ofthe present invention that various buffering, delay and hold-offcircuitry or control functions may also be employed to insure thatsystem delays, acquisition delays and the like are compensated for aspart of the temporal alignment process of step 220.

At step 230 the temporally-aligned data streams are combined andrasterized to provide waveform data suitable for display in threedimensions. The rasterization process used depends upon the type ofdisplay device employed to present the waveform data. For example,rasterization appropriate to a two-dimensional display such as a liquidcrystal display or cathode ray tube may not be appropriate to therasterization requirements of a holographic image, stereoscope image orother three-dimensional display technique.

At step 240 the waveform data is displayed according to, per box 245, atwo-dimensional or three-dimensional display technique. Two-dimensionaltechniques include perspective control, orthogonal view (i.e., stackeddisplay of waveforms) and other display techniques simulating athree-dimensional display. Three-dimensional display techniques compriseholographic images and other true three-dimensional renderings.

The display of the time-aligned waveforms according to the invention maybe modified in many different ways. For example, rather than using aZ-axis representation, waveforms representative of a third measurementdomain or a waveform associated with an inter-stream timing relationshipmay be represented by changes in intensity or color of the waveformsrepresented in the XY axis. For example, where energy associated with aparticular spectral region is relatively high, a temporally-alignedsignal acquired from the analog domain or digital domain contemporaneouswith measurements made in the high energy RF domain may be displayedwith a higher intensity level or different color level.

At step 250, the waveform data for display is adapted in response touser manipulation. For example, a two-dimensional orthagonal (i.e.,“stacked”) display simulating a three-dimensional display may betranslated into a perspective view of the displayed waveform data, byuser manipulation of an XYZ vector icon. Similarly, a waveform displayhaving a three-dimensional perspective view may be adapted (i.e.,translated or rotated) by a user, as desired.

FIGS. 3, 4, and 5 are graphical representations of screen displaysuseful in understanding the present invention. FIG. 3 shows a screendisplay of two precisely time-aligned, overlapped (i.e., “stacked”) sinewaves. In such a display, it can be said that a Z-axis is present, butprovides no viewing perspective to a user because the Z-axis of thedisplay is perpendicular to the user's filed of view. The twooverlapping sine waves of FIG. 3 become distinct when the viewingperspective is “tilted” as shown in FIG. 4. Thus, the XY coordinaterepresentation shown in FIG. 3 becomes an XYZ coordinate representationin FIG. 4, by translating one of the screen displays in the X and Y axeswith respect to the other screen display. Similarly, the screen displayof FIG. 3 can be transformed into a perspective view by use ofwell-known graphical image rotation methods. FIG. 5 is a compositerepresentation of a repetitive pulse signal and a sine wave signalhaving a perspective view similar to that of FIG. 4 such that additionalspatial separation is provided.

FIG. 6 shows a screen display in perspective view in accordance with thesubject invention. In FIG. 6, the X-axis represents TIME, the Y-axisrepresents MAGNITUDE, and the Z-axis represents DOMAIN. Specifically,waveform 610 is a waveform captured from the Analog Domain, waveform 620is a waveform captured from the Logic Domain, and the areagenerally-designated 630 contains spectra 630 a, 630 b, 630 c, 630 d,630 e, and 630 f captured from the Frequency Domain. Only seven spectrawere shown in FIG. 6 to avoid cluttering the drawing for purposes ofclarity. In fact, a spectrum exists at each point in time thatcorresponds to a sample point. All available spectra may, or may not, bedisplayed simultaneously depending upon the particular data to behighlighted.

Note the substantially simultaneous appearance of a “glitch” 615 onanalog waveform 610, a signal anomaly 625 on logic waveform 620, and aspurious trace (i.e., a “spur”) 635 in the spectrum 630 d. In such acase, it may be desirable to display only the single spectrum 630 d thatshows the spur.

FIG. 7 is an orthogonal screen view showing the same information as theperspective view of FIG. 6. In FIG. 7, the X-axis represents TIME, theY-axis represents MAGNITUDE for the Analog Domain waveform 710 and theLogic Domain waveform 720, but represents FREQUENCY for the spectra ofthe Frequency Domain. In FIG. 7, the Z-axis applies to the FrequencyDomain only, and is arranged such that it is perpendicular to the screendisplay and pointed directly toward the viewer. Thus, the spectra 730 athrough 730 f are rotated such that viewer is looking directly down theZ-axis onto the tops of the individual energy spikes. In this example,the relative magnitudes of each of the energy spikes is shown by color(denoted by different cross hatching). Note that the spur 735 is morereadily observable in the example of FIG. 7 than it is in the example ofFIG. 6. In the examples shown in both FIGS. 6 and 7 the spur issubstantially the same magnitude as the center frequency component. Notealso that the dotted line shows that spectrum 730 d is time-aligned withglitch 715, and anomaly 725.

As discussed above with respect to FIG. 6, only seven spectra were shownin FIG. 7. If all of the spectra were shown in FIG. 7, the spectra wouldbe packed together so closely that area 730 would appear as solidmulti-colored sheet. It is herein recognized that such a display may bevery useful, because the human eye is quite good at discerning differentareas of differing color.

In one embodiment of the invention, the viewer or user may highlightcontemporaneous or temporally aligned portions of each of themeasurement domain waveforms to establish an area of interest, whicharea of interest may be magnified or “zoomed in” to allow more detailedexamination of the waveforms. Moreover, other oscilloscope waveformprocessing functions such as mathematical functions may be employed toprocess the various waveforms and drive thereby additional informationuseful to the test and measurement instrument user. For example, inresponse to a primary or secondary trigger condition existing in one ofthe measurement domains, a mathematical function may be employed toprocess contemporaneously acquired or relevant samples from anothermeasurement domain.

While the foregoing is directed to the preferred embodiment of thepresent invention, other and further embodiments of the invention may bedevised without departing from the basic scope thereof, and the scope ofthe invention is determined by the claims that follow.

1. A method, comprising, the steps of: receiving a plurality of samplestreams representing respective signal measurements made in differingmeasurement domains; temporally-aligning said sample streams; generatingwaveform data associated with said temporally aligned sample streams,said waveform data representing sample magnitudes as a function of timeand including Z-axis information adapted to illustrate at least oneinter-stream timing relationship.
 2. The method according to claim 1wherein said waveform data provides a three-dimensional representationof said time domain measurements.
 3. The method according to claim 2wherein said three-dimensional representation comprises one of anorthogonal view, a holographic propagation and a perspective view. 4.The method according to claim 2 wherein said three-dimensionalrepresentation is manipulable.
 5. The method according to claim 2wherein said three-dimensional representation is provided by renderingtwo-dimensional waveforms which are adapted in perspective in responseto a control signal.
 6. The method according to claim 1 wherein saidinter-stream timing relationship is established by use of at least oneof a common trigger event, a timestamp, and a common clock signal. 7.The method according to claim 1 wherein each of said sample streams istemporally-aligned to another of said plurality of said sample streamsby use of timestamps.
 8. The method according to claim 1 wherein each ofsaid sample streams is temporally-aligned to another of said pluralityof said sample streams by use of a common clock.
 9. The method accordingto claim 1 wherein each of said sample streams is temporally-aligned toanother of said plurality of said sample streams by use of a commontrigger event.
 10. The method according to claim 9 wherein said commontrigger event is one of an analog signal condition, an analog signaltransition, an analog signal anomaly, parallel logic combination, and aserial logic combination.
 11. The method according to claim 1 whereinsaid sample streams represent at least a radio frequency (RF) spectrum,an analog signal, and a digital signal.
 12. The method according toclaim 11 wherein X and Y axes for plotting said analog and digitalsignals are time and magnitude respectively, and X and Y axes forplotting said RF spectrum are frequency and magnitude respectively, anda z-zaxis displacement is indicative of a difference in measurementdomain.
 13. The method according to claim 11 wherein: said RF signalcomprises spectral measurements associated with a communications medium;said analog signal comprises a modulated signal passing through saidcommunications medium; and said digital signal represents demodulateddata received via said communications medium.
 14. The method accordingto claim 13 wherein said waveform data is adapted to display aninter-stream timing relationship between an anomaly in said spectralmeasurement and an anomaly in said demodulated data.
 15. The methodaccording to claim 13 wherein said communications medium comprises atleast one of a Bluetooth channel, a WiFi channel, an Ethernet channel, asatellite channel, a hybrid fiber coax channel, a wireless LAN channel.16. The method according to claim 16 wherein each of said sample streamshas associated with it a respective sequence of time stamps, said timestamps adapted for use in temporal alignment.
 17. The method accordingto claim 1 wherein said plurality of sample streams represent anoscilloscope graph, a logic analysis trace, a packet representation anda frequency spectrum waterfall.
 18. The method according to claim 17wherein said waveform data is produced in a display in which a firstaxis is time, a second axis is measurement domain and a third axis iscontent of a measured phenomenon.
 19. The method according to claim 17wherein said content is represented by at least one of a varyingintensity level and a varying color.
 20. The method according to claim19 wherein said content represents a corruption of data within acommunications channel.
 21. The method according to claim 20 wherein inresponse to completion of data events, said display is adapted toprovide visual association between packet errors and RF spectrummeasurements.